package com.ynet.middleground.riskmanage.bean;

import javax.validation.constraints.NotEmpty;

import com.ynet.core.common.BaseReqObj;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @author liulx
 * @description 静态质押监管及解除结果同步信息
 * @date 2020-08-18 11:15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "静态质押监管及解除结果同步信息", description = "静态质押监管及解除结果同步信息")
public class SyncPledgeStaticReq extends BaseReqObj {

    private static final long serialVersionUID = -4570392134283126017L;

    @ApiModelProperty(value = "系统标志 0：冷链、1：大港", notes = "系统标志 0：冷链、1：大港", allowableValues = "0,1", example = "0",
        required = true)
    @NotEmpty(message = "系统标志不能为空")
    private String chanType;

    /**
     * 唯一标识
     */
    @ApiModelProperty(value = "唯一标识\n中台系统生成的唯一标识，用于更新指令结果", notes = "唯一标识\n中台系统生成的唯一标识，用于更新指令结果", required = true)
    @NotEmpty(message = "唯一标识不能为空")
    private String trendId;

    /*  @ApiModelProperty(value = "冷链静态质押监管及解除结果同步信息", notes = "冷链静态质押监管及解除结果同步信息")
    private SyncPledgeStaticColdChainReq yzhData;
    
    @ApiModelProperty(value = "大港静态质押监管及解除结果同步信息", notes = "大港静态质押监管及解除结果同步信息")
    private SyncPledgeStaticDgReq dgData;*/

  /**
   * 冷链客户号
   */
  @ApiModelProperty(value = "冷链客户号", notes = "冷链客户号")
  private String userNo;

  /**
   * 冷链客户名称
   */
  @ApiModelProperty(value = "冷链客户名称", notes = "冷链客户名称")
  private String userName;

  /**
   * 质押监管数量
   */
  @ApiModelProperty(value = "质押监管数量", notes = "质押监管数量")
  private String watchAmount;

  /**
   * 质押监管重量
   */
  @ApiModelProperty(value = "质押监管重量", notes = "质押监管重量")
  private String watchWeight;

  /**
   * 指令
   */
  @ApiModelProperty(value = "指令\nZYJG-质押监管/JCZYJG-解除质押监管", notes = "指令\nZYJG-质押监管/JCZYJG-解除质押监管", required = true)
  private String order;

  /**
   * 执行结果
   */
  @ApiModelProperty(value = "执行结果\n1质押监管成功; 2 质押监管失败; 3 解除质押监管成功; 4 解除质押监管失败；5 换货成功；6 换货失败", notes = "执行结果\n",
      required = true)
  @NotEmpty(message = "执行结果不能为空")
  private String result;

  /**
   * 原因
   */
  @ApiModelProperty(value = "原因", notes = "原因")
  private String reason;

}
